package com.itheima.d7_jdk8_time;

import java.time.LocalDate;

public class Test1_LocalDate {
    public static void main(String[] args) {
        // 0、获取本地日期对象(不可变对象)
        LocalDate ld = LocalDate.now(); // 年 月 日
        System.out.println(ld);

        // 1、获取日期对象中的信息
        int year = ld.getYear(); // 年
        int month = ld.getMonthValue(); // 月(1-12)
        int day = ld.getDayOfMonth(); // 日
        int dayOfYear = ld.getDayOfYear();  // 一年中的第几天
        int dayOfWeek = ld.getDayOfWeek().getValue(); // 星期几
        System.out.println(year);
        System.out.println(day);
        System.out.println(dayOfWeek);


        LocalDate now = LocalDate.now();
        System.out.println(now);
        LocalDate localDate = LocalDate.of(2002, 1, 28);
        // 2、直接修改某个信息: withYear、withMonth、withDayOfMonth、withDayOfYear
        // 注意 : JDK8开始的日期类,是不可改变的
        LocalDate localDate1 = localDate.withMonth(3);
        System.out.println(localDate1);
        // 3、把某个信息加多少: plusYears、plusMonths、plusDays、plusWeeks
        LocalDate localDate2 = localDate1.plusDays(2);
        System.out.println(localDate2);
        // 4、把某个信息减多少：minusYears、minusMonths、minusDays、minusWeeks
        LocalDate localDate3 = localDate2.minusDays(2);
        System.out.println(localDate3);
        LocalDate localDate4 = localDate3.minusYears(2);
        System.out.println(localDate4);
        // 5、获取指定日期的LocalDate对象： public static LocalDate of(int year, int month, int dayOfMonth)

        // 6、判断2个日期对象，是否相等，在前还是在后： equals isBefore isAfter
        System.out.println(localDate4.isBefore(localDate3));
        LocalDate now1 = LocalDate.now();
        System.out.println(now.equals(now1));
    }
}
